1. Field of the Invention
This invention relates to communications and, more particularly, to protocol message compression for a wireless communications system.
2. Description of Related Art
Two communication technologies are commonly used by the general public; cellular telephony and the Internet. Cellular telephony provides its users with the freedom of mobility—the possibility of being reached with reasonable service quality regardless of location. However, the main service provided by cellular telephony is speech. While flexibility for all kinds of usage (speech, data, video, audio, etc.) has been Internet's strength, its focus has been on fixed connections and relatively large terminals, and the quality of some services (such as Internet telephony) has generally been poor. As technology advances, the Internet and cellular technologies are merging. Future cellular “phones” may contain an IP-stack (internet protocol) and support voice over IP in addition to web-browsing, e-mail, etc. In essence, the Internet is going mobile, or cellular systems are becoming much more than telephony, depending on the point of view.
FIG. 1 shows a conventional network 10 which can be divided into a radio access network (RAN) 12 and a core network (CN) 14. The RAN 12 comprises the equipment used to support wireless interfaces 16a–b between a wireless unit 18a–b and the network 10. The RAN 12 includes NodeBs or base stations 20a–c connected over links (Iub links) 21a–c to radio network or base station controllers (RNC) 22a–b. The interface between the base station and the RNC is referred to as the Iub interface or link, and the interface between two RNCs is referred to as the Iur interface. Currently, both the Iub and Iur interfaces are based on ATM (a synchronous transfer mode), and ATM switches are allowed between NodeBs and RNCs.
The core network 14 includes the network elements that support circuit-based communications as well as packet-based communications. In establishing a circuit channel to handle circuit-based communications between the wireless unit 18b and a public switched telephone network (PSTN) 24 or another wireless unit, the base station 20b receives (in the uplink) and transmits (in the downlink), the coded information (circuit voice or circuit switched data) over the wireless interface or link 16b. The RNC 22b is responsible for frame selection, encryption and handling of access network mobility. The RNC 22b forwards the circuit voice and circuit switched data over a network, such as an ATM/IP network to a 3G mobile switching center (MSC) 30. The 3G-MSC 30 is responsible for call processing and macromobility on the MSC level. The 3G-MSC 30 establishes the connectivity between the wireless unit 18b and the PSTN 24.
Commonly used terms in this technical field are “all-IP” and “IP all the way”. These terms both relate to the case where an IP is used end to end, even if the path involves cellular links, and IP is also run over the radio hop(s). This is done for all types of traffic, both the user data (e.g. voice or streaming) and control signaling data, either SIP (session initiation protocol) or RTSP (real time streaming protocol). A benefit of this is the service flexibility introduced by IP combined with the freedom provided by continuous mobility. The downside is the relative large overhead the IP protocol suite typically introduces, e.g. due to large headers and text-based signaling protocols.
In cellular systems, the scarce radio resources should be used in an efficient way. It should be possible to support a sufficient number of users per cell, otherwise costs will be prohibitive. Frequency spectrum and thus bandwidth are costly resources in cellular links and should be used carefully.
The ROHC (RObust Header Compression) working group has successfully solved the problem of reducing bandwidth requirements for the header parts of real time protocol (RTP), user datagram protocol (UDP), and IP packets. With this obstacle removed, new possibilities of enhancing mobile internet performance arise. One of these relates to application signaling protocols. Protocols such as SIP, RTSP, and SDP (session description protocol) are typically used to set up and control applications in a mobile Internet. However, the protocol messages are large in size and create delays due to their request/response nature. Compression of these messages would increase spectrum efficiency and reduce transmission delay.
The SIP is an application layer protocol for establishing, modifying and terminating multimedia sessions or calls. These sessions include Internet multimedia conferences, Internet telephony and similar applications. SIP can be used over either TCP (Transmission Control Protocol) or UDP. SIP is a text based protocol, using ISO 10646 in UTF-8 encoding.
The SDP may be used to advertise multimedia conferences and communicate conference addresses and conference tool-specific information. The SDP is also used for general real-time multimedia session description purposes. SDP is carried in the message body of SIP and RTSP messages. SDP is text based using the ISO 10646 character set in UTF-8 encoding.
The RTSP is an application level protocol for controlling delivery of data with real-time properties, such as audio and video. RTSP may use UDP or TCP (or another protocol) as the transport protocol. RTSP is text based using the ISO 10646 character set in UTF-8 encoding.
The above protocols have many similarities. These similarities have implications on solutions to the problems they create in conjunction with the cellular radio access. Their similarities include the following:                Requests and reply characteristics. When a sender sends a request, it stays idle until it has received a response, hence, it typically takes a number of round trip times to conclude a SIP, SDP, or RTSP session.        They are ASCII based. Thus to represent the value 230, 3*8=24 bits are used. A binary representation of the same value, by comparison, would require only 8 bits.        They are large in size in order to provide the necessary information to the session participants.        
SIP and RTSP share many common header field names, methods and status codes. Their traffic patterns are also similar. The signaling is carried out primarily during the setup phase. For SIP, this means that the majority of the signaling is carried out to set up a phone call or multimedia session. For RTSP, the majority of the signaling is done before the transmission of application data.
The need for solving the problems caused by the signaling protocol messages is made clear by looking at a typical SIP/SDP Call Setup sequence over a narrow band cellular channel and by studying results from a simple system capacity example. These results indicate that there also would be a gain to the system capacity by reducing the size of the single protocol messages.
FIG. 2 illustrates an example of SIP signaling between two termination points with a wireless link between, and the resulting delay under certain system assumptions.
The one way delay is calculated according to the following equation:OneWayDelay=MessageSize[in bits]/LinkSpeed[in bits/sec]+RTT[in sec]/2  Eq. (1)where RTT is the round trip time.The following values have been used:
RTT/2: 70 msecLinkSpeed9.6 kbps
The delay formula in Eq. (1) is based on an approximation of a WCDMA (wideband code division multiple access) radio access method for speech services. For instance, delays caused by possible retransmissions due to errors are ignored.
Applying Eq. (1) to each SIP/SDP message shown in the example of FIG. 2 gives a total delay of 4130 msec from the first SIP/SDP message to the last. The RSVP and Session Management (Radio Bearer setup), displayed in FIG. 2 will add approximately 1.5 seconds to the total delay, using Eq. (1). However, there may also be RSVP and SM signaling prior to the SIP INVITE message to establish the radio bearer, which would add approximately another 1.5 seconds.
The TSG (Technical Specification Group) has performed a comparison between a GSM (Global System for Mobiles) Edge (Enhanced Data Rates for Global Evolution) Radio Access Network (GERAN) call setup using SIP and an ordinary GSM call setup. For a typical GSM call setup, the time is about 3.6 seconds, and for the case when using SIP, the call setup is approximately 7.9 seconds.
A first solution to decrease the call setup using SIP uses a dynamic dictionary and the LZSS (Lempel-Ziv-Storer-Szymanski) compression algorithm. The dynamic dictionary is kept as long as packets belonging to the context keep arriving. Determining whether a packet flow is still active can be done using a timer or from the semantics of the protocol. This solution introduces 2 bytes of overhead for every compressed message.
In this first solution, compression includes the followings steps:
1. Append the message to the dictionary and compress the extended file using LZSS.
2. Separate the part of the compressed file that corresponds to the dictionary from the part which corresponds to the message. This is possible since LZSS processes the file from left to right and the part which has already been compressed does not change as the compression proceeds. That is, compressing the dictionary itself or compressing it with a message appended to it will produce the same output (apart from the compressed message).
In this first solution, decompression includes the following steps:
1. Append the compressed message to the compressed dictionary and decompress the extended file.
2. Separate the message from the dictionary. This is possible because the boundry of the dictionary is known and the message is appended to the dictionary.
The performance of this first solution is as follows. The first message compression ratio is 1.5 and subsequent message compression ratios range from 3.1 to 8.3 depending on the operation modes of the compressor and decompressor. In a limited contact mode, the decompressor can acknowledge messages from the compressor, so that the compressor can make sure that the decompressor has the same dictionary as the compressor. In a full contact mode, the compressor and decompressor are one entity and share the dictionary, so both sent and received messages can be used for the compression process.
A second solution uses LZJH (Lempel-Ziv-Jeff-Heath) as the compression algorithm. This second solution uses preloaded dictionary and a multi-packet mode, where the dictionary is updated using previous messages, and then using the LZJH compression algorithm. This second solution can reduce the first message by a ratio of 2.8.
In summary, when SIP messages are compressed individually using a Lempel-Ziv-type algorithm, the compression ratio is around 1.5. With a preloaded static dictionary, most conventional compression algorithms yield a compression ration of less than 3 for SIP messages. When a codebook is populated by the first INVITE message, Lempel-Ziv-type algorithms improve the compression ratio to close to 5.
Thus, a better solution is needed to further reduce signaling delay and required bandwidth when considering both system bandwidth requirements and service setup delays.